<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/KPIS.GERP.Models.HRM" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/KPIS.GERP.Models.HRM" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ArrayOfRuleAbsence">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RuleAbsence" nillable="true" type="tns:RuleAbsence" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfRuleAbsence" nillable="true" type="tns:ArrayOfRuleAbsence" />
  <xs:complexType name="RuleAbsence">
    <xs:sequence>
      <xs:element minOccurs="0" name="AbsenceType" nillable="true" type="tns:PsAbsenceType" />
      <xs:element minOccurs="0" name="AbsenceTypeId" type="xs:int" />
      <xs:element minOccurs="0" name="CreatedBy" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="CreatedWhen" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DayCarryLimit" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="DayCarryType" type="tns:DayCarryType" />
      <xs:element minOccurs="0" name="DayLimit" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="DayLimitFullSalary" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="DayLimitHalfSalary" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="DayPerTimeLimit" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="EmpType" nillable="true" type="tns:MasEmployeeType" />
      <xs:element minOccurs="0" name="EmpTypeId" type="xs:int" />
      <xs:element minOccurs="0" name="Gender" nillable="true" type="tns:MasGender" />
      <xs:element minOccurs="0" name="GenderSeq" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="IncludeNwd" type="xs:boolean" />
      <xs:element minOccurs="0" name="RecordStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Remarks" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RuleAbsenceId" type="xs:int" />
      <xs:element minOccurs="0" name="SendBefore" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="TimeLimit" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="UpdatedBy" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="UpdatedWhen" nillable="true" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="RuleAbsence" nillable="true" type="tns:RuleAbsence" />
  <xs:complexType name="PsAbsenceType">
    <xs:sequence>
      <xs:element minOccurs="0" name="AbsenceTypeId" type="xs:int" />
      <xs:element minOccurs="0" name="AbsenceTypeName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CreatedBy" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="CreatedWhen" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="RecordStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Remarks" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="UpdatedBy" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="UpdatedWhen" nillable="true" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PsAbsenceType" nillable="true" type="tns:PsAbsenceType" />
  <xs:simpleType name="DayCarryType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="NoCarry" />
      <xs:enumeration value="CarryAll" />
      <xs:enumeration value="CarryLimit" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="DayCarryType" nillable="true" type="tns:DayCarryType" />
  <xs:complexType name="MasEmployeeType">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgeRetirement" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="EmpTypeId" type="xs:int" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RecordStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Remarks" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SalaryUpTime" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="YearTypeId" nillable="true" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MasEmployeeType" nillable="true" type="tns:MasEmployeeType" />
  <xs:complexType name="MasGender">
    <xs:sequence>
      <xs:element minOccurs="0" name="GenderId" type="xs:int" />
      <xs:element minOccurs="0" name="MasNamePrefixs" nillable="true" type="tns:ArrayOfMasNamePrefix" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NameEng" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RecordStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Thai" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MasGender" nillable="true" type="tns:MasGender" />
  <xs:complexType name="ArrayOfMasNamePrefix">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="MasNamePrefix" nillable="true" type="tns:MasNamePrefix" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfMasNamePrefix" nillable="true" type="tns:ArrayOfMasNamePrefix" />
  <xs:complexType name="MasNamePrefix">
    <xs:sequence>
      <xs:element minOccurs="0" name="Code" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="GenderId" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="MasGender" nillable="true" type="tns:MasGender" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NameEng" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NameEngShort" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NamePrefixId" type="xs:int" />
      <xs:element minOccurs="0" name="NameShort" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RecordStatus" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MasNamePrefix" nillable="true" type="tns:MasNamePrefix" />
</xs:schema>